package com.quanyan.travel.enums;


import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

public enum RefundMsgEnum implements Serializable {

    //注意id取值,为了映射list的坐标
    REFUND_TYPE_1(1, 1.00, "低于两天,退款全部","非季度(单场)活动行程小于(包含)2日：距离非季度(单场)活动开始日期72小时(包含)以上申请退出，退还全部实际支付费用及鸟蛋"),
    REFUND_TYPE_2(2, 0.50, "1-2日,提前1-3天退款50%","非季度(单场)活动行程小于(包含)2日，距离非季度(单场)活动开始日期72小时以内，24小时（包含）以上申请退出，按实际支付金额扣除50%，鸟蛋扣除50%"),
    REFUND_TYPE_3(3, 0.00, "低于两天,退款全部","非季度(单场)活动行程小于(包含)2日，距离非季度(单场)活动开始日期24小时以内，申请退出，按实际支付金额扣除100%，鸟蛋扣除100%"),
    REFUND_TYPE_4(4, 1.00, "低于两天,退款全部","非季度(单场)活动行程大于(包含)3日，距离非季度(单场)活动开始日期15天(包含)以上，申请退出，退还全部实际支付费用及鸟蛋"),
    REFUND_TYPE_5(5, 0.50,"低于两天,退款全部","非季度(单场)活动行程大于(包含)3日，距离非季度(单场)活动开始日期15天以内，7天(包含)以上申请退出，按实际支付金额扣除50%，鸟蛋扣除50%"),
    REFUND_TYPE_6(6, 0.00, "低于两天,退款全部","非季度(单场)活动行程大于(包含)3日，距离非季度(单场)活动开始日期7天以内申请退出，扣除全部实际支付费用及鸟蛋"),
    REFUND_TYPE_7(7, 1.00, "低于两天,退款全部","季度(多场)活动总行程小于(包含)2日：距离季度(多场)首场活动开始日期72小时(包含)以上申请退出，退还全部实际支付费用及鸟蛋"),
    REFUND_TYPE_8(8, 0.00, "低于两天,退款全部","季度(多场)活动总行程小于(包含)2日，距离季度(多场)首场活动开始日期72小时以内，申请退出，按实际支付金额扣除100%，鸟蛋扣除100%"),
    REFUND_TYPE_9(9, 1.00, "低于两天,退款全部","季度(多场)活动总行程大于(包含)3日，距离季度(多场)首场活动开始日期15天(包含)以上，申请退出，退还全部实际支付费用及鸟蛋"),
    REFUND_TYPE_10(10, 0.00, "低于两天,退款全部","季度(多场)活动总行程大于(包含)3日，距离季度(多场)首场活动开始日期15天以内申请退出，扣除全部实际支付费用及鸟蛋");

    private int id;

    private double discount;

    private String name;

    private String label;

    public static List<String> getAllLabel(){
        List<String> msg = new ArrayList<>();
        msg.add(RefundMsgEnum.REFUND_TYPE_1.getLabel());
        msg.add(RefundMsgEnum.REFUND_TYPE_2.getLabel());
        msg.add(RefundMsgEnum.REFUND_TYPE_3.getLabel());
        msg.add(RefundMsgEnum.REFUND_TYPE_4.getLabel());
        msg.add(RefundMsgEnum.REFUND_TYPE_5.getLabel());
        msg.add(RefundMsgEnum.REFUND_TYPE_6.getLabel());
        msg.add(RefundMsgEnum.REFUND_TYPE_7.getLabel());
        msg.add(RefundMsgEnum.REFUND_TYPE_8.getLabel());
        msg.add(RefundMsgEnum.REFUND_TYPE_9.getLabel());
        msg.add(RefundMsgEnum.REFUND_TYPE_10.getLabel());
        return msg;
    }

    RefundMsgEnum(int id, double discount, String name, String label) {
        this.id = id;
        this.discount = discount;
        this.name = name;
        this.label = label;
    }

    public int getId() {
        return this.id;
    }


    public double getDiscount() {
        return discount;
    }

    public String getName() {
        return this.name;
    }

    public String getLabel() {
        return this.label;
    }
}
